Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-FIN-010
DeskripsiMencatat hutang atas biaya operasional yang belum dibayar: daftar, tambah massal, ubah draft, finalisasi, unlock, hapus, dan cetak, dengan akun hutang biaya dari master biaya serta hak akses kelompok Transaksi
Nomor Revisi1
Tanggal2026-10-04
KeteranganDokumentasi baseline dari dokumentasi fitur demo dan kode FE

1. Ringkasan​

a. In scope​

  • User melihat daftar hutang biaya (draft / final, sisa hutang, status lunas).
  • User menambah satu atau banyak baris hutang biaya sekaligus (bulk) dengan lawan transaksi, master biaya, nominal, cabang opsional, tempo, serta opsi pungut PPh / PPN.
  • User melihat detail, mengubah draft, menyimpan final, mengubah final kembali ke draft (unlock), menghapus draft, dan mencetak.
  • Sistem memakai master Biaya yang sudah punya akun hutang biaya (hutang_biaya_id) sebagai sumber pemetaan akun.
  • Hak akses mengikuti permission #hutang-biaya di kelompok hak akses Transaksi (demo §4.2.C).

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01User dengan hak lihat dapat melihat daftar hutang biaya
FR-02User dengan hak dasar dapat menambah hutang biaya secara bulk
FR-03User dapat melihat detail hutang biaya
FR-04User dengan hak dasar dapat mengubah hutang biaya berstatus draft
FR-05User dapat menyimpan final hutang biaya (draft menjadi final)
FR-06User dengan permission draft pada #hutang-biaya dapat mengembalikan final ke draft
FR-07User dengan permission draft pada #hutang-biaya dapat menghapus hutang biaya draft
FR-08User dapat mencetak dokumen hutang biaya (halaman lihat memakai permission reprint)
FR-09Setiap baris hutang biaya wajib terhubung ke master biaya yang memiliki akun hutang biaya
FR-10Hak akses memakai permission #hutang-biaya (basic, draft, all, reprint) pada kelompok Transaksi

3. Use Case List​

KodeDeskripsi
UC-01Melihat daftar hutang biaya
UC-02Menambah hutang biaya
UC-03Melihat detail hutang biaya
UC-04Mengubah hutang biaya draft
UC-05Menyimpan final hutang biaya
UC-06Mengubah hutang biaya ke draft
UC-07Menghapus hutang biaya draft
UC-08Mencetak hutang biaya

4. Use Case Scenario​

UC-01 : Melihat daftar hutang biaya​

AktorUser keuangan dengan hak lihat
DeskripsiUser melihat daftar hutang biaya brand
PrekondisiUser sudah login
Brand aktif
Route /hutang-biaya dapat diakses
Alur utama1. User membuka halaman Hutang Biaya (entri menu default dikomentari; hak akses tetap di kelompok Transaksi).
2. Sistem memuat daftar dengan status Draft/Selesai dan sisa hutang.
3. User dapat filter status, lawan transaksi, person, dan nomor invoice.
Alur negatif- Jika gagal memuat, daftar kosong.
- Jika tanpa permission all, daftar dibatasi user_id user login.
Bisnis rule- Hutang biaya masuk kelompok hak akses Transaksi (demo §4.2.C).
- Tombol tambah hanya tampil bila permission basic.
- Enrich status lunas di FE bergantung InvoiceHutang.getStatusHutang yang saat ini tidak tersedia di modul API invoice-hutang.
PostkondisiDaftar tampil
TriggerUser membuka /brand/:id/hutang-biaya
Kode FRFR-01
FR-10

UC-02 : Menambah hutang biaya​

AktorUser keuangan dengan hak dasar
DeskripsiUser mencatat satu atau banyak hutang biaya baru
PrekondisiPermission basic
Master biaya sudah tersedia
Alur utama1. User membuka Tambah.
2. User mengisi tanggal, cabang opsional, nomor invoice (manual/auto), tempo, opsi PPh/PPN.
3. User menambah baris: lawan (supplier/customer/karyawan), pilih lawan, master biaya, nominal, keterangan opsional.
4. User memilih Simpan Draft atau Simpan Final.
5. Sistem mengirim create bulk.
Alur negatif- Jika form invalid, simpan dibatalkan.
- Jika Simpan Final dibatalkan pada konfirmasi, data tidak tersimpan.
- Jika server menolak, muncul pesan error.
Bisnis rule- Satu submit dapat membuat banyak record (createBulk).
- Field kunci baris: biaya_id, lawan_transaksi, lawan_transaksi_id, nominal_diluar_ppn, is_tercetak.
- Akun hutang biaya tidak diisi manual di form transaksi; diambil dari master Biaya lewat biaya_id → hutang_biaya_id.
- Default PPN 11% bila pungut PPN diaktifkan.
PostkondisiHutang biaya tersimpan (draft atau final)
TriggerUser menekan Simpan Draft / Simpan Final
Kode FRFR-02
FR-09

UC-03 : Melihat detail hutang biaya​

AktorUser keuangan dengan hak lihat
DeskripsiUser membuka detail satu hutang biaya
PrekondisiRecord hutang biaya ada
Alur utama1. User memilih Lihat dari daftar.
2. Sistem memuat detail beserta gudang, biaya, dan lawan transaksi.
3. Sistem menampilkan informasi dan baris transaksi.
Alur negatif- Jika gagal memuat referensi terkait, field terkait tampil kosong / -.
Bisnis rule-
PostkondisiDetail tampil
TriggerUser membuka /hutang-biaya/lihat/:id
Kode FRFR-03

UC-04 : Mengubah hutang biaya draft​

AktorUser keuangan dengan hak dasar
DeskripsiUser mengubah data hutang biaya yang masih draft
Prekondisiis_tercetak = false
Permission basic
Alur utama1. User membuka Ubah dari daftar.
2. User mengubah informasi / baris.
3. User simpan.
4. Sistem memanggil update.
Alur negatif- Menu Ubah tidak tampil untuk final.
- Validasi form gagal → tidak tersimpan.
Bisnis rule- Hanya draft yang dapat diubah lewat halaman edit.
PostkondisiData draft terbarui
TriggerUser membuka /hutang-biaya/edit/:id lalu simpan
Kode FRFR-04

UC-05 : Menyimpan final hutang biaya​

AktorUser keuangan
DeskripsiUser menandai hutang biaya draft menjadi final
PrekondisiRecord masih draft
Alur utama1. User memilih Simpan Final di daftar (atau simpan final dari form tambah/edit).
2. Sistem mengirim update is_tercetak: true.
3. Status berubah menjadi Selesai.
Alur negatif- Jika server menolak, status tetap draft dan muncul error.
Bisnis rule- Final tidak dapat diubah langsung; perlu unlock dulu.
PostkondisiHutang biaya final
TriggerUser menekan Simpan Final
Kode FRFR-05

UC-06 : Mengubah hutang biaya ke draft​

AktorUser keuangan dengan permission draft
DeskripsiUser mengembalikan hutang biaya final menjadi draft
PrekondisiRecord final
Permission level draft pada #hutang-biaya
Alur utama1. User memilih Ubah ke Simpan Draft.
2. Sistem memanggil unlock.
3. Status kembali Draft.
Alur negatif- Tanpa permission unlock, aksi tidak tampil.
- Jika server menolak, muncul error.
Bisnis rule- Unlock memakai endpoint khusus unlock, bukan update biasa.
PostkondisiRecord kembali draft
TriggerUser menekan Ubah ke Simpan Draft
Kode FRFR-06
FR-10

UC-07 : Menghapus hutang biaya draft​

AktorUser keuangan dengan permission draft
DeskripsiUser menghapus hutang biaya yang masih draft
PrekondisiRecord draft
Permission level draft pada #hutang-biaya
Alur utama1. User memilih Hapus.
2. Sistem menghapus record.
3. Baris hilang dari daftar.
Alur negatif- Aksi hapus tidak tampil untuk final.
- Jika gagal, muncul pesan error.
Bisnis rule- Hapus hanya untuk draft.
PostkondisiRecord terhapus
TriggerUser menekan Hapus
Kode FRFR-07

UC-08 : Mencetak hutang biaya​

AktorUser keuangan
DeskripsiUser mencetak dokumen hutang biaya
PrekondisiRecord ada
Alur utama1. User memilih Print.
2. Sistem memuat detail lengkap.
3. Sistem membentuk layout cetak (invoice, cabang, lawan, biaya, nominal, PPh/PPN, tempo).
Alur negatif- Jika detail gagal dimuat, cetak dibatalkan.
Bisnis rule-
PostkondisiDokumen cetak dihasilkan
TriggerUser menekan Print
Kode FRFR-08

5. Data Flow Diagram​

DFD-01 — Alur hutang biaya dan akun hutang biaya​

6. Sequence Diagram​

SD-01 — UC-01 : Melihat daftar hutang biaya​

SD-02 — UC-02 : Menambah hutang biaya​

SD-03 — UC-03 : Melihat detail hutang biaya​

SD-04 — UC-04 : Mengubah hutang biaya draft​

SD-05 — UC-05 : Menyimpan final hutang biaya​

SD-06 — UC-06 : Mengubah hutang biaya ke draft​

SD-07 — UC-07 : Menghapus hutang biaya draft​

SD-08 — UC-08 : Mencetak hutang biaya​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
GET /hutang-biayaexisting-
GET /hutang-biaya/:idexisting-
POST /hutang-biayaexisting-
POST /hutang-biaya/bulkexisting-
PUT /hutang-biaya/:idexisting-
PUT /hutang-biaya/unlock/:idexisting-
DELETE /hutang-biaya/:idexisting-